package py.progweb.sgc.gui.client.dialog;

import py.progweb.sgc.gui.client.service.ABMService;
import py.progweb.sgc.gui.client.service.ABMServiceAsync;
import py.progweb.sgc.gui.shared.dialogmodel.DataRecord;
import py.progweb.sgc.model.GrupoRegla;

import com.google.gwt.core.client.GWT;
import com.smartgwt.client.widgets.form.fields.TextItem;

public class FormularioGrupoRegla extends FormularioBase {
	
	GrupoRegla grupoRegla = new GrupoRegla();
	TextItem nombre, descripcion, codigo;
	ABMServiceAsync service;	
	
	public FormularioGrupoRegla(VentanaBase padre) {
		super("Grupo de Reglas",padre);
		
		
		codigo = new TextItem();
		codigo.setTitle("Codigo");
		codigo.setRequired(false);
		codigo.setDisabled(true);
		
		nombre = new TextItem();
		nombre.setTitle("Nombre");
		nombre.setRequired(true);

		descripcion = new TextItem();
		descripcion.setTitle("Descripcion");
		descripcion.setRequired(false);
		
		this.setItems(codigo, nombre, descripcion);
		
		service = GWT.create(ABMService.class);
	}

	@Override
	public void reset() {
		codigo.setValue("");
		nombre.setValue("");
		descripcion.setValue("");
	}

	@Override
	protected void guardar() {
		if(!vacio(codigo.getValue()))
			grupoRegla.setCodGruporeglaPk((Integer)codigo.getValue());
		
		grupoRegla.setStrNombre(nombre.getValue().toString());
		grupoRegla.setStrDescrip(descripcion.getValue().toString());
		
		service.guardar(grupoRegla, callback);
	}
	
	public void setData(DataRecord dr) {
		codigo.setValue((Long)dr.getAtributo("codGruporeglaPk"));
		nombre.setValue((String)dr.getAtributo("strNombre"));
		descripcion.setValue((String)dr.getAtributo("strDescrip"));
	}

}
